package com.example;

import java.util.Arrays;

import static java.lang.System.*;

public class MyArray {
    public static void main(String[] args) {
        //1. 定义数组的方式
        int[] a = new int[10];
        // 匿名数组
        // new int[] {1,2,3};
        // 数组的初值只能在数组声明时给定
        int[] b = {1,2,3,4,5,6};
        out.println(Arrays.toString(b));

        // 数组拷贝
        // 数组是引用类型变量，如果将一个数组赋值给另一个变量，两个变量实际上指向内存中同一个数组空间

        int[] c = b;
        c[0] = 99;
        out.println(Arrays.toString(b));
        out.println(Arrays.toString(c));

        // 如果希望仅仅将原数组的值复制到一个新数组上 需要借助Arrays.copyOf方法

        int[] d = Arrays.copyOf(b, b.length);
        d[0] = 1000;
        out.println(Arrays.toString(b));
        out.println(Arrays.toString(d));

        //数组排序，Arrays.sort 基于快速排序算法实现
        Arrays.sort(d);
        out.println(Arrays.toString(d));
    }
}
